using System;
using System.Collections.Generic;
using System.Linq;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Audio;
using Microsoft.Xna.Framework.Content;
using Microsoft.Xna.Framework.GamerServices;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Input;
using Microsoft.Xna.Framework.Media;


namespace Week1.player
{
    /// <summary>
    /// This is a game component that implements IUpdateable.
    /// </summary>
    public class HomePlanet : world.DrawableBase, helper.IDebugable
    {


        /// <summary>
        /// 
        /// </summary>
        /// <param name="game"></param>
        /// <param name="sModelName"></param>
        public HomePlanet(Game game, string sModelName, player.Camera camera, Effect effect): base(game, sModelName, camera, effect, 1)
        {
        }

        /// <summary>
        /// Allows the game component to perform any initialization it needs to before starting
        /// to run.  This is where it can query for any required services and load content.
        /// </summary>
        public override void Initialize()
        {
             oVars.iInstanceCount = 1;
            for (int iDx = 0; iDx < oVars.iInstanceCount; iDx++)
            {
                oVars.oPosition[iDx] = new Vector3(0, 0, 0);
                oVars.oWorld[iDx] = Matrix.CreateScale(70) * Matrix.CreateWorld(oVars.oPosition[iDx], Vector3.Forward, Vector3.Up);
            }


            base.Initialize();
        }

        protected override void LoadContent()
        {
            base.LoadContent();

            registerDebug();
        }


        /// <summary>
        /// Allows the game component to update itself.
        /// </summary>
        /// <param name="gameTime">Provides a snapshot of timing values.</param>
        public override void Update(GameTime gameTime)
        {
            base.Update(gameTime);
        }

        /// <summary>
        /// 
        /// </summary>
        /// <param name="gameTime"></param>
        public override void Draw(GameTime gameTime)
        {


            base.Draw(gameTime);
        }

    }
}
